AWS Tools for PowerShellで自アカウントのAZ名とAZ IDのマッピングを確認する
しばたです。
先日の東京リージョンの障害に際し弊社武田よりAWS CLIを使いアカウント毎のAZ名とAZ IDを確認するTipsが公開されました。
こちらの内容についてAWS Tools for PowerShellでも同様の確認ができますので本記事ではその方法を紹介します。
環境
基本的にはAWS Tools for PowerShellが使える環境であれば問題ないです。
本記事ではAWSPowerShell.NetCore Ver.3.3.563.1 (本日時点の最新バージョン) を使用しています。
(もちろんAWSPowerShellモジュールでも大丈夫です)
やってみた
Get-EC2AvailabilityZoneコマンドレットがAWS CLIのaws ec2 describe-availability-zonesに相当し、リージョンごとのAZに関する情報を取得できます。
# モジュールのインポート
# プロファイル情報などの初期設定 (こちらは環境に応じて行ってください)
Import-Module AWSPowerShell.NetCore
Set-AWSCredential -ProfileName your-profile
# Get-EC2AvailabilityZone でリージョン情報を取得
Get-EC2AvailabilityZone -Region ap-northeast-1
このコマンドレットの結果はAmazon.EC2.Model.AvailabilityZoneクラスのオブジェクトとなり、デフォルトではList形式で表示されます。[1]
ここでPowerShellではFormat-*
なコマンドレットを使うことでコンソールへの最終表示形式を変えることができます。
表形式を明示したい場合はFormat-Table
コマンドレットを使い以下の様にします。
# Format-Table コマンドレットで表形式で表示
Get-EC2AvailabilityZone -Region ap-northeast-1 | Format-Table RegionName, ZoneId, ZoneName
私のアカウントではap-northeast-1a
はapne1-az4
を指していました。
最後に
ざっとこんな感じです。
AWS Tools for PowerShellをお使いの方の役に立てば幸いです。
厳密にはこのオブジェクトには表示形式が指定されておらず、その様なオブジェクトは公開されているプロパティの数によって表示形式が変わります ↩︎